#ifndef INPUT_H_
#define INPUT_H_

#include "Engine.h"

namespace TSS
{
	class Input
	{
		HWND hWnd;
		IDirectInput8 *di;
		IDirectInputDevice8 *keyboard;
		char keyState[256];
		IDirectInputDevice8 *mouse;
		DIMOUSESTATE mouseState;
		POINT position;

	public:
		Input(HWND window);
		virtual ~Input();
		void Update();
		char GetKeyState(int key) { return keyState[key]; }
		long GetMousePosX() { return position.x; }
		long GetMousePosY() { return position.y; }
		int GetMouseButton(char button);
		long GetMouseDeltaX() { return mouseState.lX; }
		long GetMouseDeltaY() { return mouseState.lY; }
		long GetMouseDeltaWheel() { return mouseState.lZ; }

	};
};

#endif